.gj-button {
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    color: #000;
    border-radius: 3px;
    padding: 6px 10px;
    cursor: pointer;
}

.gj-unselectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.gj-margin-left-5 {
    margin-left: 5px;
}

.gj-margin-left-10 {
    margin-left: 10px;
}

.gj-width-full {
    width: 100%;
}

.gj-cursor-pointer {
    cursor: pointer;
}

.gj-text-align-center {
    text-align: center;
}

.gj-font-size-16 {
    font-size: 16px;
}

.gj-hidden {
    display: none;
}

.gj-mdl-icon-plus::after {
    content: "\E145";
}

.gj-mdl-icon-minus::after {
    content: "\E15B";
}

.gj-draggable {
    cursor: move;
}
.gj-resizable-handle {
    position: absolute;
    font-size: 0.1px;
    display: block;
    -ms-touch-action: none;
    touch-action: none;
    z-index: 90;
}

.gj-resizable-n {
    cursor: n-resize;
    height: 7px;
    width: 100%;
    top: -5px;
    left: 0;
}
.gj-resizable-e {
    cursor: e-resize;
    width: 7px;
    right: -5px;
    top: 0;
    height: 100%;
}
.gj-resizable-s {
    cursor: s-resize;
    height: 7px;
    width: 100%;
    bottom: -5px;
    left: 0;
}
.gj-resizable-w {
	cursor: w-resize;
	width: 7px;
	left: -5px;
	top: 0;
	height: 100%;
}
.gj-resizable-se {
	cursor: se-resize;
	width: 12px;
	height: 12px;
	right: 1px;
	bottom: 1px;
}
.gj-resizable-sw {
	cursor: sw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	bottom: -5px;
}
.gj-resizable-nw {
	cursor: nw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	top: -5px;
}
.gj-resizable-ne {
	cursor: ne-resize;
	width: 9px;
	height: 9px;
	right: -5px;
	top: -5px;
}

.gj-dialog-footer {
    position: absolute;
    bottom: 0px;
    width: 100%;
    margin-top: 0px;
}

.gj-modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    display: none;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    outline: 0;
}

.gj-content {
    border: 1px solid #999;
    background-color: #fff;
    border-radius: 6px;
    outline: 0;
}

.gj-header {
    min-height: 16.43px;
    padding: 15px;
    border-bottom: 1px solid #e5e5e5;
}

.gj-footer {
    min-height: 16.43px;
    padding: 15px;
    border-top: 1px solid #e5e5e5;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.gj-title {
    margin: 2px;
}

.gj-close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
    float: right;
    font-size: 21px;
    color: #000;
}

.gj-body {
    position: relative;
    padding: 15px;
}

/** Foundation **/
div.gj-dialog-fd-content {
    visibility: inherit;
    padding: 0px;
    margin-left: 0px;
}
h4.gj-dialog-fd-title {
    padding: 8px;
    margin: 0px;
    line-height: 40px;
}
button[data-role="close"].gj-dialog-fd-close {
    padding: 8px;
    margin: 0px;
    top: 0;
    background-color: white;
    right: 0px;
}
div.gj-dialog-fd-body {
    padding: 0px 8px 8px 8px;
}
div.gj-dialog-fd-footer {
    padding: 0px 8px 8px 8px;
}
div.gj-dialog-fd-footer button {
    margin: 0px;
}

/** jQueryUI **/
div.gj-dialog-ui-header {
    padding: 10px;
    border-left: 0px;
    border-right: 0px;
    border-top: 0px;
}
button.gj-dialog-ui-close {
    float: right;
    width: 24px;
    height: 24px;
    text-decoration: none;
    padding: 0px;
}
h4.gj-dialog-ui-title {
    margin: 0;
    line-height: 24px;
}
div.gj-dialog-ui-body {
    padding: 10px;
}

/** Material Design **/
.gj-dialog-mdl-close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
    float: right;
    font-size: 2.5em;
    margin: 24px 24px 0;
}

.gj-dialog-mdl-content {
    background-color: #FFF;
}
DIV.gj-grid-wrapper {
    margin: auto;
    position: relative;
    clear:both;
}

TABLE.gj-grid-table {
    margin: auto;    
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
}

TABLE.gj-grid-table THEAD TH [data-role="selectAll"] {
    margin: auto;
}

TABLE.gj-grid-table THEAD TH [data-role="title"] {
    display: inline-block;
}

TABLE.gj-grid-table THEAD TH [data-role="sorticon"] {
    display: inline-block;
}

TABLE.gj-grid-table > thead > tr > th,
TABLE.gj-grid-table > tbody > tr > td {
    overflow: hidden;
}

TABLE.gj-grid-table DIV[data-role="display"],
TABLE.gj-grid-table DIV[data-role="display"] DIV 
{
	vertical-align: middle;
	text-indent: 0;
    display: inline-block;
    white-space: pre-wrap;
    -ms-word-break: break-word;
    word-break: break-word;
}

TABLE.gj-grid-table .fa {
    padding: 2px;
}

DIV.gj-grid-wrapper DIV.gj-grid-loading-cover
{
    background: #BBBBBB;
    opacity: 0.5;
    position: absolute;
    vertical-align: middle;
}

DIV.gj-grid-wrapper DIV.gj-grid-loading-text
{
    position: absolute;
    font-weight: bold;
}

.gj-dirty {
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px;
    border-color: #f00 transparent transparent #f00;
    padding: 0;
    overflow: hidden;
    vertical-align: top;
}

TABLE.gj-grid-table .gj-grid-icon
{
    margin: 0 2px;
    cursor: pointer;
    overflow: visible;
    width: 16px;
    height: 16px;
}

/* Base Theme */
.gj-grid-base-table {
    border: 1px solid #ddd;
    font-family: Helvetica,Arial,sans-serif;
    font-size: 14px;
}

.gj-grid-base-table thead tr th {
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    padding: 2px 1px 2px 1px;
}

.gj-grid-base-table tbody tr:hover {
    background-color: #f5f5f5;
}

.gj-grid-base-table tbody tr td {
    border: 1px solid #ddd;
}

.gj-grid-base-table tbody tr td div[data-role="display"] {
    padding: 3px;
}

.gj-grid-base-table thead tr th div {
    padding: 3px;
}

div.gj-grid-wrapper div.gj-grid-base-toolbar {
    background-color: #f5f5f5;
    padding: 5px;
    font-weight: bold;
    border: 1px solid #ddd;
}

.gj-grid-base-active {
    background-color: #f5f5f5;
}

.gj-content {
    border: 1px solid #999;
    background-color: #fff;
    border-radius: 6px;
    outline: 0;
}

/* Bootstrap Theme */
div.gj-grid-wrapper div.gj-grid-bootstrap-toolbar {
    background-color: #f5f5f5;
    padding: 8px;
    font-weight: bold;
    border: 1px solid #ddd;
}

table.gj-grid-bootstrap-table thead th {
    background-color: #f5f5f5;
    vertical-align:middle;
}

table.gj-grid-bootstrap-table thead th [data-role="sorticon"] {
    margin-left: 5px;
}

table.gj-grid-bootstrap-table tbody tr td div[data-role="display"] {
    padding: 0px;
}

/* jQuery UI Theme */
div.gj-grid-wrapper div.gj-grid-ui-toolbar {
    border-top: 1px solid menutext;
    border-left: 1px solid menutext;
    border-right: 1px solid menutext;
    border-bottom: 0px;
    padding: 2px;
    font: 11px Verdana;
}

TABLE.gj-grid-ui-table {
    font: 11px Verdana;
    border-left: 1px solid;
    border-top: 0px;
    border-right: 1px solid;
    border-bottom: 0px;
    padding: 0px;
    border-spacing: 0px;
}

table.gj-grid-ui-table thead tr th.gj-grid-ui-thead-th {
    height: 20px;
    padding: 0px;
    /*cursor: default;*/
    white-space: normal;
    vertical-align: middle;
    border: 1px solid;
    border-spacing: 0px;
    border-collapse: collapse;
    border-color: menutext;
	text-align: center;
    -moz-user-select: none;
    -khtml-user-select: none;
}

table.gj-grid-ui-table thead tr th:first-child {
    border-left: 0px;
}

table.gj-grid-ui-table thead tr th div
{
    padding: 2px;
    vertical-align: middle;
    display: inline-block;
}

table.gj-grid-ui-table thead tr th span.gj-grid-ui-thead-th-sort-icon
{
    vertical-align: middle;
    display: inline-block;
}

table.gj-grid-ui-table tbody tr.ui-state-hover
{
    border: 0px;
}

TABLE.gj-grid-ui-table > tbody > tr > td
{
    padding: 0px;
    border-left: 1px solid;
    border-top: 0px;
    border-right: 0px;
    border-bottom: 1px solid;
    border-color: menutext;
}

TABLE.gj-grid-ui-table > tbody > tr > td:first-child
{
    border-left: 0px;
}

TABLE.gj-grid-table > tbody > tr > td > div
{
    padding: 2px;
    overflow: hidden;
}


/* Material Design Theme */
table.mdl-data-table thead th [data-role="sorticon"] {
    margin-left: 5px;
}

table.mdl-data-table thead th [data-role="sorticon"] i.material-icons {
    position: absolute;
    font-size: 18px;
    top: 16px;
}

.gj-grid-table .gj-grid-mdl-limit-select {
    text-align: right;
    display: inline-block;
    width: 50px;
    padding: 0px 5px;
    margin-left: 10px;
    font-size: 13px;
}

.gj-grid-table .gj-grid-mdl-page {
    text-align: right;
    display: inline-block;
    width: 32px;
    padding: 0px;
    font-size: 13px;
}

.gj-grid-table .gj-grid-mdl-pager-label {
    padding: 0px 5px;
    font-size: 13px;
}

table.mdl-data-table tr td {
    text-align: left;
}
/* Hide all prioritized columns by default */
@media only all {
	th.display-1120,
	td.display-1120,
	th.display-960,
	td.display-960,
	th.display-800,
	td.display-800,
	th.display-640,
	td.display-640,
	th.display-480,
	td.display-480,
	th.display-320,
	td.display-320 {
		display: none;
	}
}

/* Show at 320px (20em x 16px) */
@media screen and (min-width: 20em) {
	TABLE.gj-grid-table th.display-320,
	TABLE.gj-grid-table td.display-320 {
		display: table-cell;
	}
}
/* Show at 480px (30em x 16px) */
@media screen and (min-width: 30em) {
	TABLE.gj-grid-table th.display-480,
	TABLE.gj-grid-table td.display-480 {
		display: table-cell;
	}
}
/* Show at 640px (40em x 16px) */
@media screen and (min-width: 40em) {
	TABLE.gj-grid-table th.display-640,
	TABLE.gj-grid-table td.display-640 {
		display: table-cell;
	}
}
/* Show at 800px (50em x 16px) */
@media screen and (min-width: 50em) {
	TABLE.gj-grid-table th.display-800,
	TABLE.gj-grid-table td.display-800 {
		display: table-cell;
	}
}
/* Show at 960px (60em x 16px) */
@media screen and (min-width: 60em) {
	TABLE.gj-grid-table th.display-960,
	TABLE.gj-grid-table td.display-960 {
		display: table-cell;
	}
}
/* Show at 1,120px (70em x 16px) */
@media screen and (min-width: 70em) {
	TABLE.gj-grid-table th.display-1120,
	TABLE.gj-grid-table td.display-1120 {
		display: table-cell;
	}
}

/* Base Theme */
.gj-grid-base-table tfoot th {
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    padding: 3px;
    font-weight: normal;
    line-height: 29px;
}

.gj-grid-base-table tfoot th button {
    margin: 0 3px 0 3px;
    background-color: #f5f5f5;
    border-radius: 4px;
    text-decoration: none;
    padding: 6px 12px;
    border: 1px solid #ddd;
    color: #337ab7;
    width: 34px;
    outline:0;
}

.gj-grid-base-table tfoot th button.gj-grid-base-active {
    background-color: #fff;
}

.gj-grid-base-table tfoot th input {
    margin: 0 5px 0 5px;
    width: 26px;
    text-align: right;
}

/* jQuery UI */
TABLE.gj-grid-table TFOOT TH.ui-grid-pager-cell
{
    height: 20px;
    padding: 0px;
    cursor: default;
    border: 1px solid menutext;
    -moz-user-select: none;
    -khtml-user-select: none;
    user-select: none;
}

TABLE.gj-grid-table TFOOT DIV.ui-grid-pager
{
    overflow: hidden;
}

TABLE.gj-grid-table TFOOT INPUT.ui-grid-pager
{    
    padding: 1px;
    width: 26px;
    height: 17px;
    font: bold 11px Verdana;
    margin: 0 5px;
    text-align: right;
}

TABLE.gj-grid-table TFOOT SELECT.ui-grid-page-sizer
{    
    padding: 0px;
    height: 17px;
    font: bold 11px Verdana;
    margin: 0 5px;
    text-align: right;
    width: 50px;
}

/* Bootstrap */
TABLE.gj-grid-table tfoot tr th.gj-grid-bootstrap-tfoot-cell {
    line-height: 30px;
    background-color: #f5f5f5;
}
.gj-grid-table thead tr th div.gj-grid-column-resizer-wrapper {
    position: relative;
    width: 100%;
    height: 0px; 
    top: 0px; 
    left: 0px; 
    padding: 0px;
}

span.gj-grid-column-resizer {
    position: absolute;
    right: 0px;
    width: 5px;
    top: -100px;
    height: 300px;
    z-index: 100;
    cursor: e-resize;
}

.gj-grid-resize-cursor {
    cursor: e-resize;
}
.gj-grid-table tbody tr.gj-grid-base-top-border td {
  border-top: 2px solid #777;
}
.gj-grid-table tbody tr.gj-grid-base-bottom-border td {
  border-bottom: 2px solid #777;
}
.gj-grid-base-table thead tr th.gj-grid-base-left-border,
.gj-grid-base-table tbody tr td.gj-grid-base-left-border
{
    border-left: 2px solid #777;
}
.gj-grid-base-table thead tr th.gj-grid-base-right-border,
.gj-grid-base-table tbody tr td.gj-grid-base-right-border
{
    border-right: 2px solid #777;
}
ul.gj-tree-list {
    list-style: none;
    padding: 0px;
    margin: 0px;
}

li.gj-tree-item {
    padding: 0px;
}

li.gj-tree-item div[data-role="wrapper"] {
    display: table;
    width: 100%;
}

li.gj-tree-item [data-role="spacer"] {
    display: table-cell;
}

[data-type="tree"] ul li [data-role="expander"] {
    display: table-cell;
    vertical-align:middle;
    text-align:center;
    cursor: pointer;
    width: 10px;
}

li.gj-tree-item [data-role="checkbox"] {
    display: table-cell;
    vertical-align:middle;
    text-align:center;
    width: 20px;
}

li.gj-tree-item [data-role="image"] {
    display: table-cell;
    vertical-align:middle;
    text-align:center;
    width: 22px;
}

li.gj-tree-item [data-role="display"] {
    display: table-cell;
    vertical-align:middle;
    cursor: pointer;
    padding: 2px 4px;
}

.gj-tree-base-active span[data-role="display"] {
    background-color: #ddd;
}

/* Bootstrap Theme */
ul.gj-tree-bootstrap-list {
    padding-left: 0px;
    margin-bottom: 0px;
}

li ul.gj-tree-bootstrap-list {
    padding-left: 0px;
    width: 100%;
}

ul.gj-tree-bootstrap-list li.gj-tree-item ul li.gj-tree-item {
    border-left: 0px;
    border-right: 0px;
}

ul.gj-tree-bootstrap-list li.gj-tree-item ul li.gj-tree-item:first-child {
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
}

ul.gj-tree-bootstrap-list li.gj-tree-item ul li.gj-tree-item:last-child {
    border-bottom: 0px;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}


ul.gj-tree-bootstrap-list li [data-role="wrapper"] {
    padding: 0px 10px;
}

ul.gj-tree-bootstrap-list li [data-role="checkbox"] {
    width: 24px;
    padding-top: 4px;
}

ul.gj-tree-bootstrap-list li [data-role="image"] {
    width: 24px;
}

ul.gj-tree-bootstrap-list li [data-role="display"] {
    padding: 12px 0px 8px 5px;
}
.list-group-item.active ul li, .list-group-item.active:focus ul li, .list-group-item.active:hover ul li {
    text-shadow: none;
    color:initial;
}

/* Material Design Theme */
.gj-tree-mdl-list {
    padding: 0px;
    list-style-type: none;
}

.gj-tree-mdl-item {
    display: list-item;
    list-style-type: none;
    padding: 4px 0px 4px 0px;
    min-height: unset;
}

li.gj-tree-mdl-item [data-role="checkbox"] {
    height: 24px;
    width: 24px;
}

li.gj-tree-mdl-item [data-role="image"] {
    height: 24px;
    width: 24px;
}

.gj-tree-mdl-active {
    background: #b3d4fc;
}

[data-type="tree"] ul li [data-role="expander"].gj-tree-material-icons-expander {
    height: 24px;
    width: 24px;
}

[data-type="tree"] ul li [data-role="expander"].gj-tree-font-awesome-expander {
    width: 24px;
}

[data-type="tree"] ul li [data-role="expander"].gj-tree-glyphicons-expander {
    width: 24px;
}
.gj-tree-drop-above {    
    border-top: 1px solid #000;
}

.gj-tree-drop-below {
    border-bottom: 1px solid #000;
}

.gj-tree-drag-el {
    padding: 0px;
    margin: 0px;
}

.gj-tree-drag-el li {
    padding: 0px;
    margin: 0px;
}

.gj-tree-drag-el [data-role="wrapper"] {
    cursor: move;
    display: table;
}

.gj-tree-drag-el [data-role="indicator"] {
    width: 14px;
    padding: 0px 3px;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}

.gj-tree-bootstrap-drag-el [data-role="indicator"] {
    width: 24px;
    height: 24px;
    padding: 0px;
}

.gj-tree-mdl-drag-el [data-role="indicator"] {
    width: 24px;
    height: 24px;
    padding: 0px;
}
.gj-checkbox-bootstrap {
    min-width: 0;
    font-size: 0;
    font-weight: normal;
    margin: 0px;
    text-align: center;
    width: 18px;
    height: 18px;
}

.gj-checkbox-bootstrap input[type="checkbox"] {
    display: none;
    margin-bottom: -12px;
}

.gj-checkbox-bootstrap span {
    background: #fff;
    display: block;
    content: " ";
    width: 18px;
    height: 18px;
    line-height: 11px;
    font-size: 11px;
    padding: 2px;
    margin-right: 4px;
    color: #555555;
    border: 1px solid #cccccc;
    border-radius: 3px;
    transition: box-shadow 0.2s linear, border-color 0.2s linear;
    cursor: pointer;
}

.gj-checkbox-bootstrap input[type="checkbox"]:focus + span:before {
    outline: 0;
    box-shadow: 0 0 0 0 #66afe9, 0 0 6px rgba(102, 175, 233, .6);
    border-color: #66afe9;
}

.gj-checkbox-bootstrap input[type="checkbox"]:checked + span:before {
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    content: "\e013 ";
}

.gj-checkbox-bootstrap input[type="checkbox"]:indeterminate + span:before {
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    content: "\2212 ";
}

.gj-checkbox-bootstrap input[type="checkbox"][disabled] + span {
    opacity: 0.6;
    cursor: not-allowed;
}

.gj-checkbox-bootstrap input[type="checkbox"][disabled] + span:before {
    background: #eee;
    border: 1px solid #ccc;
    color: #888;
}

.gj-checkbox-md {
    min-width: 0;
    font-size: 0;
    font-weight: normal;
    margin: 0px;
    text-align: center;
    width: 16px;
    height: 16px;
    position: relative;
}

.gj-checkbox-md input[type="checkbox"] {
    display: none;
    margin-bottom: -12px;
}

.gj-checkbox-md span {
    display: inline-block;
    box-sizing: border-box;
    width: 16px;
    height: 16px;
    margin: 0;
    cursor: pointer;
    overflow: hidden;
    border: 2px solid rgba(0,0,0,.54);
    border-radius: 2px;
    z-index: 2;
}

.gj-checkbox-md input[type="checkbox"]:checked + span {
    border: 2px solid rgb(63,81,181);
}

.gj-checkbox-md input[type="checkbox"]:checked + span::after {
    content: "\E876";
    font-size: 14px;
    background-color: rgb(63,81,181);
    font-weight: bold;
    color: #FFF;
    white-space: pre;
    position: absolute;
    left: 1px;
    top: -15px;
}

.gj-checkbox-md input[type="checkbox"]:indeterminate + span {
    border: 2px solid rgb(63,81,181);
}

.gj-checkbox-md input[type="checkbox"]:indeterminate + span:after {
    content: "\E15B";
    font-size: 14px;
    background-color: rgb(63,81,181);
    font-weight: bold;
    color: #FFF;
    white-space: pre;
    position: absolute;
    left: 1px;
    top: -15px;
}

.gj-checkbox-md input[type="checkbox"][disabled] + span {
    background-color: rgba(0,0,0,.54);
    border: 2px solid rgba(0,0,0,.54);
}

.gj-checkbox-md input[type="checkbox"][disabled] + span:after {
    background-color: rgba(0,0,0,.54);
}

